home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / dev / basic / ace24dist.lha / ace24.lha / utils / ab2ascii-1.3 / tokens.c < prev    next >
Text File  |  1996-09-11  |  7KB  |  328 lines

  1. /*
  2.    AmigaBASIC token tables taken from
  3.  
  4.    Commodore Amiga BASIC Version 1.2 (Created  6 Oct 1986)
  5.    Copyright (c) 1985, 1986 by Microsoft Corp.
  6.  
  7.    Obtained initially via trial & error method by
  8.    Stefan Reisner, sr@ph-cip.uni-koeln.de
  9.  
  10.    Revised and expanded by Tobias Ferber, ukjg@dkauni2.bitnet
  11. */
  12.  
  13. /*
  14.  * (c)Copyright 1994 by Tobias Ferber.
  15.  *
  16.  * This file is part of AmigaBASIC->ASCII.
  17.  *
  18.  * AmigaBASIC->ASCII is free software; you can redistribute it and/or
  19.  * modify it under the terms of the GNU General Public License as
  20.  * published by the Free Software Foundation; either version 1 of the
  21.  * License, or (at your option) any later version.
  22.  *
  23.  * AmigaBASIC->ASCII is distributed in the hope that it will be useful,
  24.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  25.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  26.  * GNU General Public License for more details.
  27.  *
  28.  * You should have received a copy of the GNU General Public License
  29.  * along with AmigaBASIC->ASCII; see the file COPYING.  If not, write to
  30.  * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  31.  */
  32.  
  33. /* 1 byte */
  34. int tok_min= 0x80;
  35. int tok_max= 0xff;
  36.  
  37. /* 2 bytes, leading 0xF8 character */
  38. int f8_min= 0x81;
  39. int f8_max= 0xdf;
  40.  
  41. /* 2 bytes, leading 0xF9 character */
  42. int f9_min= 0xf4;
  43. int f9_max= 0xff;
  44.  
  45. /* 2 bytes, leading 0xFA character */
  46. int fa_min= 0x80;
  47. int fa_max= 0x97;
  48.  
  49. /* 2 bytes, leading 0xFB character */
  50. int fb_min= 0xff;
  51. int fb_max= 0xff;
  52.  
  53.  
  54. char *tok_tab[]= {
  55. /* 0x80 */  "ABS",
  56. /* 0x81 */  "ASC",
  57. /* 0x82 */  "ATN",
  58. /* 0x83 */  "CALL",
  59. /* 0x84 */  "CDBL",
  60. /* 0x85 */  "CHR$",
  61. /* 0x86 */  "CINT",
  62. /* 0x87 */  "CLOSE",
  63. /* 0x88 */  "COMMON",
  64. /* 0x89 */  "COS",
  65. /* 0x8a */  "CVD",
  66. /* 0x8b */  "CVI",
  67. /* 0x8c */  "CVS",
  68. /* 0x8d */  "DATA",
  69. /* 0x8e */  "ELSE",
  70. /* 0x8f */  "EOF",
  71. /* 0x90 */  "EXP",
  72. /* 0x91 */  "FIELD",
  73. /* 0x92 */  "FIX",
  74. /* 0x93 */  "FN",
  75. /* 0x94 */  "FOR",
  76. /* 0x95 */  "GET",
  77. /* 0x96 */  "GOSUB",
  78. /* 0x97 */  "GOTO",
  79. /* 0x98 */  "IF",
  80. /* 0x99 */  "INKEY$",
  81. /* 0x9a */  "INPUT",
  82. /* 0x9b */  "INT",
  83. /* 0x9c */  "LEFT$",
  84. /* 0x9d */  "LEN",
  85. /* 0x9e */  "LET",
  86. /* 0x9f */  "LINE",
  87. /* 0xa0 */  0,
  88. /* 0xa1 */  "LOC",
  89. /* 0xa2 */  "LOF",
  90. /* 0xa3 */  "LOG",
  91. /* 0xa4 */  "LSET",
  92. /* 0xa5 */  "MID$",
  93. /* 0xa6 */  "MKD$",
  94. /* 0xa7 */  "MKI$",
  95. /* 0xa8 */  "MKS$",
  96. /* 0xa9 */  "NEXT",
  97. /* 0xaa */  "ON",
  98. /* 0xab */  "OPEN",
  99. /* 0xac */  "PRINT",
  100. /* 0xad */  "PUT",
  101. /* 0xae */  "READ",
  102. /* 0xaf */  "REM",
  103. /* 0xb0 */  "RETURN",
  104. /* 0xb1 */  "RIGHT$",
  105. /* 0xb2 */  "RND",
  106. /* 0xb3 */  "RSET",
  107. /* 0xb4 */  "SGN",
  108. /* 0xb5 */  "SIN",
  109. /* 0xb6 */  "SPACE$",
  110. /* 0xb7 */  "SQR",
  111. /* 0xb8 */  "STR$",
  112. /* 0xb9 */  "STRING$",
  113. /* 0xba */  "TAN",
  114. /* 0xbb */  0,
  115. /* 0xbc */  "VAL",
  116. /* 0xbd */  "WEND",
  117. /* 0xbe */  "WHILE",
  118. /* 0xbf */  "WRITE",
  119. /* 0xc0 */  "ELSEIF",
  120. /* 0xc1 */  "CLNG",
  121. /* 0xc2 */  "CVL",
  122. /* 0xc3 */  "MKL$",
  123. /* 0xc4 */  "AREA",
  124. /* 0xc5 */  0,
  125. /* 0xc6 */  0,
  126. /* 0xc7 */  0,
  127. /* 0xc8 */  0,
  128. /* 0xc9 */  0,
  129. /* 0xca */  0,
  130. /* 0xcb */  0,
  131. /* 0xcc */  0,
  132. /* 0xcd */  0,
  133. /* 0xce */  0,
  134. /* 0xcf */  0,
  135. /* 0xd0 */  0,
  136. /* 0xd1 */  0,
  137. /* 0xd2 */  0,
  138. /* 0xd3 */  0,
  139. /* 0xd4 */  0,
  140. /* 0xd5 */  0,
  141. /* 0xd6 */  0,
  142. /* 0xd7 */  0,
  143. /* 0xd8 */  0,
  144. /* 0xd9 */  0,
  145. /* 0xda */  0,
  146. /* 0xdb */  0,
  147. /* 0xdc */  0,
  148. /* 0xdd */  0,
  149. /* 0xde */  0,
  150. /* 0xdf */  0,
  151. /* 0xe0 */  0,
  152. /* 0xe1 */  0,
  153. /* 0xe2 */  0,
  154. /* 0xe3 */  "STATIC",
  155. /* 0xe4 */  "USING",
  156. /* 0xe5 */  "TO",
  157. /* 0xe6 */  "THEN",
  158. /* 0xe7 */  "NOT",
  159. /* 0xe8 */  "'",       /* added by tf */
  160. /* 0xe9 */  ">",
  161. /* 0xea */  "=",
  162. /* 0xeb */  "<",
  163. /* 0xec */  "+",
  164. /* 0xed */  "-",
  165. /* 0xee */  "*",
  166. /* 0xef */  "/",
  167. /* 0xf0 */  "^",
  168. /* 0xf1 */  "AND",
  169. /* 0xf2 */  "OR",
  170. /* 0xf3 */  "XOR",
  171. /* 0xf4 */  "EQV",
  172. /* 0xf5 */  "IMP",
  173. /* 0xf6 */  "MOD",
  174. /* 0xf7 */  "\\",      /* added by tf */
  175. /* 0xf8 */  0,         /* see f8_tab[] */
  176. /* 0xf9 */  0,         /* see f9_tab[] */
  177. /* 0xfa */  0,         /* see fa_tab[] */
  178. /* 0xfb */  0,         /* see fb_tab[] */
  179. /* 0xfc */  0,
  180. /* 0xfd */  0,
  181. /* 0xfe */  0,
  182. /* 0xff */  0,
  183. };
  184.  
  185. char *f8_tab[]= {
  186. /* 0x81 */  "CHAIN",
  187. /* 0x82 */  "CLEAR",
  188. /* 0x83 */  "CLS",
  189. /* 0x84 */  "CONT",
  190. /* 0x85 */  "CSNG",
  191. /* 0x86 */  "DATE$",
  192. /* 0x87 */  "DEFINT",
  193. /* 0x88 */  "DEFSNG",
  194. /* 0x89 */  "DEFDBL",
  195. /* 0x8a */  "DEFSTR",
  196. /* 0x8b */  "DEF",
  197. /* 0x8c */  "DELETE",
  198. /* 0x8d */  "DIM",
  199. /* 0x8e */  "EDIT",
  200. /* 0x8f */  "END",
  201. /* 0x90 */  "ERASE",
  202. /* 0x91 */  "ERL",
  203. /* 0x92 */  "ERROR",
  204. /* 0x93 */  "ERR",
  205. /* 0x94 */  "FILES",
  206. /* 0x95 */  "FRE",
  207. /* 0x96 */  "HEX$",
  208. /* 0x97 */  "INSTR",
  209. /* 0x98 */  "KILL",
  210. /* 0x99 */  "LIST",
  211. /* 0x9a */  "LLIST",
  212. /* 0x9b */  "LOAD",
  213. /* 0x9c */  "LPOS",
  214. /* 0x9d */  "LPRINT",
  215. /* 0x9e */  "MERGE",
  216. /* 0x9f */  "NAME",
  217. /* 0xa0 */  "NEW",
  218. /* 0xa1 */  "OCT$",
  219. /* 0xa2 */  "OPTION",
  220. /* 0xa3 */  "PEEK",
  221. /* 0xa4 */  "POKE",
  222. /* 0xa5 */  "POS",
  223. /* 0xa6 */  "RANDOMIZE",
  224. /* 0xa7 */  0,
  225. /* 0xa8 */  "RESTORE",
  226. /* 0xa9 */  "RESUME",
  227. /* 0xaa */  "RUN",
  228. /* 0xab */  "SAVE",
  229. /* 0xac */  0,
  230. /* 0xad */  "STOP",
  231. /* 0xae */  "SWAP",
  232. /* 0xaf */  "SYSTEM",
  233. /* 0xb0 */  "TIME",
  234. /* 0xb1 */  "TRON",
  235. /* 0xb2 */  "TROFF",
  236. /* 0xb3 */  "VARPTR",
  237. /* 0xb4 */  "WIDTH",
  238. /* 0xb5 */  "BEEP",
  239. /* 0xb6 */  "CIRCLE",
  240. /* 0xb7 */  0,
  241. /* 0xb8 */  "MOUSE",
  242. /* 0xb9 */  "POINT",
  243. /* 0xba */  "PRESET",
  244. /* 0xbb */  "PSET",
  245. /* 0xbc */  "RESET",
  246. /* 0xbd */  "TIMER",
  247. /* 0xbe */  "SUB",
  248. /* 0xbf */  "EXIT",
  249. /* 0xc0 */  "SOUND",
  250. /* 0xc1 */  0,
  251. /* 0xc2 */  "MENU",
  252. /* 0xc3 */  "WINDOW",
  253. /* 0xc4 */  0,
  254. /* 0xc5 */  "LOCATE",
  255. /* 0xc6 */  "CSRLIN",
  256. /* 0xc7 */  "LBOUND",
  257. /* 0xc8 */  "UBOUND",
  258. /* 0xc9 */  "SHARED",
  259. /* 0xca */  "UCASE$",
  260. /* 0xcb */  "SCROLL",
  261. /* 0xcc */  "LIBRARY",
  262. /* 0xcd */  0,
  263. /* 0xce */  0,
  264. /* 0xcf */  0,
  265. /* 0xd0 */  0,
  266. /* 0xd1 */  "",        /* prefix for a vector (x1,x2,...,xN) */
  267. /* 0xd2 */  "PAINT",
  268. /* 0xd3 */  "SCREEN",
  269. /* 0xd4 */  "DECLARE",
  270. /* 0xd5 */  "FUNCTION",
  271. /* 0xd6 */  "DEFLNG",
  272. /* 0xd7 */  "SADD",
  273. /* 0xd8 */  "AREAFILL",
  274. /* 0xd9 */  "COLOR",
  275. /* 0xda */  "PATTERN",
  276. /* 0xdb */  "PALETTE",
  277. /* 0xdc */  "SLEEP",
  278. /* 0xdd */  "CHDIR",
  279. /* 0xde */  "STRIG",
  280. /* 0xdf */  "STICK",
  281. };
  282.  
  283. char *f9_tab[]= {
  284. /* 0xf4 */  "OFF",
  285. /* 0xf5 */  "BREAK",
  286. /* 0xf6 */  "WAIT",
  287. /* 0xf7 */  "USR",
  288. /* 0xf8 */  "TAB",
  289. /* 0xf9 */  "STEP",
  290. /* 0xfa */  "SPC",
  291. /* 0xfb */  "OUTPUT",
  292. /* 0xfc */  "BASE",
  293. /* 0xfd */  "AS",
  294. /* 0xfe */  "APPEND",
  295. /* 0xff */  "ALL",
  296. };
  297.  
  298. char *fa_tab[]= {
  299. /* 0x80 */  "WAVE",
  300. /* 0x81 */  "POKEW",
  301. /* 0x82 */  "POKEL",
  302. /* 0x83 */  "PEEKW",
  303. /* 0x84 */  "PEEKL",
  304. /* 0x85 */  "SAY",
  305. /* 0x86 */  "TRANSLATE$",
  306. /* 0x87 */  "OBJECT.SHAPE",
  307. /* 0x88 */  "OBJECT.PRIORITY",
  308. /* 0x89 */  "OBJECT.X",
  309. /* 0x8a */  "OBJECT.Y",
  310. /* 0x8b */  "OBJECT.VX",
  311. /* 0x8c */  "OBJECT.VY",
  312. /* 0x8d */  "OBJECT.AX",
  313. /* 0x8e */  "OBJECT.AY",
  314. /* 0x8f */  "OBJECT.CLIP",
  315. /* 0x90 */  "OBJECT.PLANES",
  316. /* 0x91 */  "OBJECT.HIT",
  317. /* 0x92 */  "OBJECT.ON",
  318. /* 0x93 */  "OBJECT.OFF",
  319. /* 0x94 */  "OBJECT.START",
  320. /* 0x95 */  "OBJECT.STOP",
  321. /* 0x96 */  "OBJECT.CLOSE",
  322. /* 0x97 */  "COLLISION",
  323. };
  324.  
  325. char *fb_tab[]= {
  326. /* 0xff */  "PTAB",
  327. };
  328.